[INFO] fetching crate bitconch-jsonrpc-macros 0.1.0...
[INFO] fixing bitconch-jsonrpc-macros-0.1.0 against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] extracting crate bitconch-jsonrpc-macros 0.1.0 into /workspace/builds/worker-2-tc2/source
[INFO] started tweaking crates.io crate bitconch-jsonrpc-macros 0.1.0
[INFO] finished tweaking crates.io crate bitconch-jsonrpc-macros 0.1.0
[INFO] tweaked toml for crates.io crate bitconch-jsonrpc-macros 0.1.0 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate bitconch-jsonrpc-macros 0.1.0 on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 88 packages to latest compatible versions
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `bitconch-jsonrpc-macros` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] d06ca34a1867edcbaa587ad89646f5a799961ec26e6c7d7115b039db8bddc5a8
[INFO] running `Command { std: "docker" "start" "d06ca34a1867edcbaa587ad89646f5a799961ec26e6c7d7115b039db8bddc5a8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d06ca34a1867edcbaa587ad89646f5a799961ec26e6c7d7115b039db8bddc5a8" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d06ca34a1867edcbaa587ad89646f5a799961ec26e6c7d7115b039db8bddc5a8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d06ca34a1867edcbaa587ad89646f5a799961ec26e6c7d7115b039db8bddc5a8" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2015 edition to 2018
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `bitconch-jsonrpc-macros` (manifest) generated 1 warning
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]     Checking futures v0.1.31
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]     Checking iovec v0.1.4
[INFO] [stderr]    Compiling memoffset v0.5.6
[INFO] [stderr]     Checking num_cpus v1.17.0
[INFO] [stderr]     Checking net2 v0.2.39
[INFO] [stderr]    Compiling quote v1.0.46
[INFO] [stderr]    Compiling crossbeam-epoch v0.8.2
[INFO] [stderr]    Compiling parking_lot_core v0.6.3
[INFO] [stderr]    Compiling parking_lot v0.9.0
[INFO] [stderr]     Checking rand_core v0.4.2
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling parking_lot_core v0.3.1
[INFO] [stderr]     Checking stable_deref_trait v1.2.1
[INFO] [stderr]     Checking scopeguard v0.3.3
[INFO] [stderr]     Checking owning_ref v0.4.1
[INFO] [stderr]     Checking bytes v0.4.12
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]     Checking bstr v1.12.1
[INFO] [stderr]     Checking rand_core v0.3.1
[INFO] [stderr]     Checking lock_api v0.1.5
[INFO] [stderr]     Checking rand v0.5.6
[INFO] [stderr]     Checking smallvec v0.6.14
[INFO] [stderr]     Checking mio v0.6.23
[INFO] [stderr]    Compiling syn v2.0.118
[INFO] [stderr]     Checking crossbeam-queue v0.2.3
[INFO] [stderr]     Checking mio-uds v0.6.8
[INFO] [stderr]     Checking crossbeam-deque v0.7.4
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking tokio-executor v0.1.10
[INFO] [stderr]     Checking tokio-io v0.1.13
[INFO] [stderr]     Checking tokio-sync v0.1.8
[INFO] [stderr]     Checking tokio-service v0.1.0
[INFO] [stderr]     Checking tokio-current-thread v0.1.7
[INFO] [stderr]     Checking tokio-timer v0.2.13
[INFO] [stderr]     Checking tokio-threadpool v0.1.18
[INFO] [stderr]     Checking parking_lot v0.6.4
[INFO] [stderr]     Checking tokio-reactor v0.1.12
[INFO] [stderr]     Checking tokio-codec v0.1.2
[INFO] [stderr]     Checking tokio-tcp v0.1.4
[INFO] [stderr]     Checking tokio-udp v0.1.6
[INFO] [stderr]     Checking tokio-uds v0.2.7
[INFO] [stderr]     Checking tokio-fs v0.1.7
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]     Checking tokio v0.1.22
[INFO] [stderr]     Checking globset v0.4.18
[INFO] [stderr]     Checking bitconch-jsonrpc-core v0.1.0
[INFO] [stderr]     Checking bitconch-jsonrpc-pubsub v0.1.0
[INFO] [stderr]     Checking bitconch-jsonrpc-server-utils v0.1.0
[INFO] [stderr]     Checking bitconch-jsonrpc-macros v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2015 edition to 2018
[INFO] [stderr]     Checking bitconch-jsonrpc-tcp-server v0.1.0
[INFO] [stderr]        Fixed src/pubsub.rs (3 fixes)
[INFO] [stderr]        Fixed src/lib.rs (4 fixes)
[INFO] [stderr]        Fixed src/auto_args.rs (7 fixes)
[INFO] [stderr]        Fixed src/util.rs (1 fix)
[INFO] [stderr]        Fixed src/delegates.rs (4 fixes)
[INFO] [stderr]    Migrating examples/pubsub-macros.rs from 2015 edition to 2018
[INFO] [stderr] error: errors present after applying fixes to crate `pubsub_macros`
[INFO] [stdout] warning: absolute paths must start with `self`, `super`, `crate`, or an external crate name in the 2018 edition
[INFO] [stdout]   --> examples/pubsub-macros.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use jsonrpc_core::{Error, ErrorCode, Result};
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `crate`: `crate::jsonrpc_core::{Error, ErrorCode, Result}`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/path-changes.html>
[INFO] [stdout]    = note: `--force-warn absolute-paths-not-starting-with-crate` implied by `--force-warn rust-2018-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]  --> examples/pubsub-macros.rs
[INFO] [stdout] warning: absolute paths must start with `self`, `super`, `crate`, or an external crate name in the 2018 edition
[INFO] [stdout]   --> examples/pubsub-macros.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use jsonrpc_core::futures::Future;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `crate`: `crate::jsonrpc_core::futures::Future`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/path-changes.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]   = cause: error: no rules expected `:`
[INFO] [stdout] warning: absolute paths must start with `self`, `super`, `crate`, or an external crate name in the 2018 edition
[INFO] [stdout]   --> examples/pubsub-macros.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use jsonrpc_pubsub::{Session, PubSubHandler, SubscriptionId};
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `crate`: `crate::jsonrpc_pubsub::{Session, PubSubHandler, SubscriptionId}`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/path-changes.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]               --> examples/pubsub-macros.rs:23:18
[INFO] [stdout] warning: absolute paths must start with `self`, `super`, `crate`, or an external crate name in the 2018 edition
[INFO] [stdout]   --> examples/pubsub-macros.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use jsonrpc_macros::pubsub;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^ help: use `crate`: `crate::jsonrpc_macros::pubsub`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/path-changes.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]                |
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> examples/pubsub-macros.rs:23:17
[INFO] [stdout]    |
[INFO] [stdout] 23 |         fn add(&self, u64, u64) -> Result<u64>;
[INFO] [stdout]    |                       ^^^ help: try naming the parameter or explicitly ignoring it: `_: u64`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout]    = note: `--force-warn anonymous-parameters` implied by `--force-warn rust-2018-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]             23 |         fn add(&self, _: u64, _: u64) -> Result<u64>;
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> examples/pubsub-macros.rs:23:22
[INFO] [stdout]    |
[INFO] [stdout] 23 |         fn add(&self, u64, u64) -> Result<u64>;
[INFO] [stdout]    |                            ^^^ help: try naming the parameter or explicitly ignoring it: `_: u64`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]                |                        ^ no rules expected this token in macro call
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> examples/pubsub-macros.rs:28:24
[INFO] [stdout]    |
[INFO] [stdout] 28 |             fn subscribe(&self, Self::Metadata, pubsub::Subscriber<String>, u64);
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]                |
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> examples/pubsub-macros.rs:28:40
[INFO] [stdout]    |
[INFO] [stdout] 28 |             fn subscribe(&self, Self::Metadata, pubsub::Subscriber<String>, u64);
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: pubsub::Subscriber<String>`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            note: while trying to match `)`
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> examples/pubsub-macros.rs:28:68
[INFO] [stdout]    |
[INFO] [stdout] 28 |             fn subscribe(&self, Self::Metadata, pubsub::Subscriber<String>, u64);
[INFO] [stdout]    |                                                                             ^^^ help: try naming the parameter or explicitly ignoring it: `_: u64`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]               --> src/auto_args.rs:182:44
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> examples/pubsub-macros.rs:32:26
[INFO] [stdout]    |
[INFO] [stdout] 32 |             fn unsubscribe(&self, Self::Metadata, SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]                |
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> examples/pubsub-macros.rs:32:42
[INFO] [stdout]    |
[INFO] [stdout] 32 |             fn unsubscribe(&self, Self::Metadata, SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                   ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: SubscriptionId`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            182 |         fn $method: ident (&self $(, $param: ty)*) -> $result: tt <$out: ty $(, $error: ty)* >
[INFO] [stderr]                |                                                  ^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: no rules expected reserved identifier `_`
[INFO] [stderr]               --> examples/pubsub-macros.rs:28:24
[INFO] [stderr]                |
[INFO] [stderr]             28 |             fn subscribe(&self, _: Self::Metadata, _: pubsub::Subscriber<String>, _: u64);
[INFO] [stderr]                |                                 ^ no rules expected this token in macro call
[INFO] [stderr]                |
[INFO] [stderr]            note: while trying to match keyword `Self`
[INFO] [stderr]               --> src/auto_args.rs:211:33
[INFO] [stderr]                |
[INFO] [stderr]            211 |         fn $sub_method: ident (&self, Self::Metadata $(, $sub_p: ty)+);
[INFO] [stderr]                |                                       ^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: aborting due to 2 previous errors
[INFO] [stderr] help: to report this as a bug, open an issue at https://github.com/rust-lang/rust/issues, quoting the full output of this command
[INFO] [stderr] help: to possibly apply more fixes, pass in the `--broken-code` flag
[INFO] [stderr] note: original diagnostics will follow:
[INFO] [stderr]    Migrating tests/macros.rs from 2015 edition to 2018
[INFO] [stderr] error: errors present after applying fixes to crate `macros`
[INFO] [stdout] warning: absolute paths must start with `self`, `super`, `crate`, or an external crate name in the 2018 edition
[INFO] [stdout]  --> tests/macros.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use jsonrpc_core::{IoHandler, Response};
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `crate`: `crate::jsonrpc_core::{IoHandler, Response}`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/path-changes.html>
[INFO] [stdout]   = note: `--force-warn absolute-paths-not-starting-with-crate` implied by `--force-warn rust-2018-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]  --> tests/macros.rs
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> tests/macros.rs:26:17
[INFO] [stdout]    |
[INFO] [stdout] 26 |         fn add(&self, u64, u64) -> Result<u64>;
[INFO] [stdout]    |                       ^^^ help: try naming the parameter or explicitly ignoring it: `_: u64`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout]    = note: `--force-warn anonymous-parameters` implied by `--force-warn rust-2018-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]   = cause: error: no rules expected `:`
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> tests/macros.rs:26:22
[INFO] [stdout]    |
[INFO] [stdout] 26 |         fn add(&self, u64, u64) -> Result<u64>;
[INFO] [stdout]    |                            ^^^ help: try naming the parameter or explicitly ignoring it: `_: u64`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]               --> tests/macros.rs:26:18
[INFO] [stderr]                |
[INFO] [stderr]             26 |         fn add(&self, _: u64, _: u64) -> Result<u64>;
[INFO] [stderr]                |                        ^ no rules expected this token in macro call
[INFO] [stderr]                |
[INFO] [stderr]            note: while trying to match `)`
[INFO] [stderr]               --> src/auto_args.rs:182:44
[INFO] [stderr]                |
[INFO] [stderr]            182 |         fn $method: ident (&self $(, $param: ty)*) -> $result: tt <$out: ty $(, $error: ty)* >
[INFO] [stderr]                |                                                  ^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: aborting due to 1 previous error
[INFO] [stderr] help: to report this as a bug, open an issue at https://github.com/rust-lang/rust/issues, quoting the full output of this command
[INFO] [stderr] help: to possibly apply more fixes, pass in the `--broken-code` flag
[INFO] [stderr] note: original diagnostics will follow:
[INFO] [stderr]    Migrating tests/pubsub-macros.rs from 2015 edition to 2018
[INFO] [stderr] error: errors present after applying fixes to crate `pubsub_macros`
[INFO] [stderr]  --> tests/pubsub-macros.rs
[INFO] [stderr]   = cause: error: no rules expected reserved identifier `_`
[INFO] [stderr]               --> tests/pubsub-macros.rs:28:24
[INFO] [stderr]                |
[INFO] [stderr]             28 |             fn subscribe(&self, _: Self::Metadata, _: pubsub::Subscriber<String>, _: u32, _: Trailing<u64>);
[INFO] [stderr]                |                                 ^ no rules expected this token in macro call
[INFO] [stderr]                |
[INFO] [stderr]            note: while trying to match keyword `Self`
[INFO] [stderr]               --> src/auto_args.rs:211:33
[INFO] [stderr]                |
[INFO] [stderr]            211 |         fn $sub_method: ident (&self, Self::Metadata $(, $sub_p: ty)+);
[INFO] [stderr]                |                                       ^^^^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: aborting due to 1 previous error
[INFO] [stdout] warning: absolute paths must start with `self`, `super`, `crate`, or an external crate name in the 2018 edition
[INFO] [stdout]  --> tests/pubsub-macros.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use jsonrpc_core::futures::sync::mpsc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `crate`: `crate::jsonrpc_core::futures::sync::mpsc`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/path-changes.html>
[INFO] [stdout]   = note: `--force-warn absolute-paths-not-starting-with-crate` implied by `--force-warn rust-2018-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] help: to report this as a bug, open an issue at https://github.com/rust-lang/rust/issues, quoting the full output of this command
[INFO] [stdout] warning: absolute paths must start with `self`, `super`, `crate`, or an external crate name in the 2018 edition
[INFO] [stdout]  --> tests/pubsub-macros.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use jsonrpc_pubsub::{PubSubHandler, SubscriptionId, Session, PubSubMetadata};
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `crate`: `crate::jsonrpc_pubsub::{PubSubHandler, SubscriptionId, Session, PubSubMetadata}`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/path-changes.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] help: to possibly apply more fixes, pass in the `--broken-code` flag
[INFO] [stdout] warning: absolute paths must start with `self`, `super`, `crate`, or an external crate name in the 2018 edition
[INFO] [stdout]   --> tests/pubsub-macros.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use jsonrpc_macros::{pubsub, Trailing};
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `crate`: `crate::jsonrpc_macros::{pubsub, Trailing}`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/path-changes.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] note: original diagnostics will follow:
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> tests/pubsub-macros.rs:28:24
[INFO] [stdout]    |
[INFO] [stdout] 28 |             fn subscribe(&self, Self::Metadata, pubsub::Subscriber<String>, u32, Trailing<u64>);
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout]    = note: `--force-warn anonymous-parameters` implied by `--force-warn rust-2018-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating examples/std.rs from 2015 edition to 2018
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> tests/pubsub-macros.rs:28:40
[INFO] [stdout]    |
[INFO] [stdout] 28 |             fn subscribe(&self, Self::Metadata, pubsub::Subscriber<String>, u32, Trailing<u64>);
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: pubsub::Subscriber<String>`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> tests/pubsub-macros.rs:28:68
[INFO] [stdout]    |
[INFO] [stdout] 28 |             fn subscribe(&self, Self::Metadata, pubsub::Subscriber<String>, u32, Trailing<u64>);
[INFO] [stdout]    |                                                                             ^^^ help: try naming the parameter or explicitly ignoring it: `_: u32`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> tests/pubsub-macros.rs:28:73
[INFO] [stdout]    |
[INFO] [stdout] 28 |             fn subscribe(&self, Self::Metadata, pubsub::Subscriber<String>, u32, Trailing<u64>);
[INFO] [stdout]    |                                                                                  ^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Trailing<u64>`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> tests/pubsub-macros.rs:32:26
[INFO] [stdout]    |
[INFO] [stdout] 32 |             fn unsubscribe(&self, Self::Metadata, SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> tests/pubsub-macros.rs:32:42
[INFO] [stdout]    |
[INFO] [stdout] 32 |             fn unsubscribe(&self, Self::Metadata, SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                   ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: SubscriptionId`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating examples/generic-trait.rs from 2015 edition to 2018
[INFO] [stderr] error: errors present after applying fixes to crate `std`
[INFO] [stderr]  --> examples/std.rs
[INFO] [stderr]   = cause: error: no rules expected `:`
[INFO] [stderr]               --> examples/std.rs:16:18
[INFO] [stderr]                |
[INFO] [stderr]             16 |         fn add(&self, _: u64, _: u64) -> Result<u64>;
[INFO] [stderr]                |                        ^ no rules expected this token in macro call
[INFO] [stderr]                |
[INFO] [stderr]            note: while trying to match `)`
[INFO] [stderr]               --> src/auto_args.rs:182:44
[INFO] [stderr]                |
[INFO] [stderr]            182 |         fn $method: ident (&self $(, $param: ty)*) -> $result: tt <$out: ty $(, $error: ty)* >
[INFO] [stderr]                |                                                  ^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: no rules expected `:`
[INFO] [stderr]               --> examples/std.rs:20:19
[INFO] [stderr]                |
[INFO] [stderr]             20 |         fn call(&self, _: u64) -> FutureResult<String, Error>;
[INFO] [stderr]                |                         ^ no rules expected this token in macro call
[INFO] [stderr]                |
[INFO] [stderr]            note: while trying to match `)`
[INFO] [stderr]               --> src/auto_args.rs:182:44
[INFO] [stderr]                |
[INFO] [stderr]            182 |         fn $method: ident (&self $(, $param: ty)*) -> $result: tt <$out: ty $(, $error: ty)* >
[INFO] [stderr]                |                                                  ^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: aborting due to 2 previous errors
[INFO] [stderr] help: to report this as a bug, open an issue at https://github.com/rust-lang/rust/issues, quoting the full output of this command
[INFO] [stderr] help: to possibly apply more fixes, pass in the `--broken-code` flag
[INFO] [stderr] note: original diagnostics will follow:
[INFO] [stdout] warning: absolute paths must start with `self`, `super`, `crate`, or an external crate name in the 2018 edition
[INFO] [stdout]  --> examples/std.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use jsonrpc_core::{IoHandler, Error, Result};
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `crate`: `crate::jsonrpc_core::{IoHandler, Error, Result}`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/path-changes.html>
[INFO] [stdout]   = note: `--force-warn absolute-paths-not-starting-with-crate` implied by `--force-warn rust-2018-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: absolute paths must start with `self`, `super`, `crate`, or an external crate name in the 2018 edition
[INFO] [stdout]  --> examples/std.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use jsonrpc_core::futures::future::{self, FutureResult};
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `crate`: `crate::jsonrpc_core::futures::future::{self, FutureResult}`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/path-changes.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> examples/std.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 |         fn add(&self, u64, u64) -> Result<u64>;
[INFO] [stdout]    |                       ^^^ help: try naming the parameter or explicitly ignoring it: `_: u64`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout]    = note: `--force-warn anonymous-parameters` implied by `--force-warn rust-2018-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> examples/std.rs:16:22
[INFO] [stdout]    |
[INFO] [stdout] 16 |         fn add(&self, u64, u64) -> Result<u64>;
[INFO] [stdout]    |                            ^^^ help: try naming the parameter or explicitly ignoring it: `_: u64`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> examples/std.rs:20:18
[INFO] [stdout]    |
[INFO] [stdout] 20 |         fn call(&self, u64) -> FutureResult<String, Error>;
[INFO] [stdout]    |                        ^^^ help: try naming the parameter or explicitly ignoring it: `_: u64`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating examples/meta-macros.rs from 2015 edition to 2018
[INFO] [stderr] error: errors present after applying fixes to crate `generic_trait`
[INFO] [stderr]  --> examples/generic-trait.rs
[INFO] [stderr]   = cause: error: no rules expected `:`
[INFO] [stderr]               --> examples/generic-trait.rs:16:22
[INFO] [stderr]                |
[INFO] [stderr]             16 |         fn set_two(&self, _: Two) -> Result<()>;
[INFO] [stderr]                |                            ^ no rules expected this token in macro call
[INFO] [stderr]                |
[INFO] [stderr]            note: while trying to match `)`
[INFO] [stderr]               --> src/auto_args.rs:182:44
[INFO] [stderr]                |
[INFO] [stderr]            182 |         fn $method: ident (&self $(, $param: ty)*) -> $result: tt <$out: ty $(, $error: ty)* >
[INFO] [stderr]                |                                                  ^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: no rules expected `:`
[INFO] [stderr]               --> examples/generic-trait.rs:20:19
[INFO] [stderr]                |
[INFO] [stderr]             20 |         fn call(&self, _: One) -> FutureResult<(One, Two), Error>;
[INFO] [stderr]                |                         ^ no rules expected this token in macro call
[INFO] [stderr]                |
[INFO] [stderr]            note: while trying to match `)`
[INFO] [stderr]               --> src/auto_args.rs:182:44
[INFO] [stderr]                |
[INFO] [stderr]            182 |         fn $method: ident (&self $(, $param: ty)*) -> $result: tt <$out: ty $(, $error: ty)* >
[INFO] [stderr]                |                                                  ^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: aborting due to 2 previous errors
[INFO] [stderr] help: to report this as a bug, open an issue at https://github.com/rust-lang/rust/issues, quoting the full output of this command
[INFO] [stderr] help: to possibly apply more fixes, pass in the `--broken-code` flag
[INFO] [stderr] note: original diagnostics will follow:
[INFO] [stdout] warning: absolute paths must start with `self`, `super`, `crate`, or an external crate name in the 2018 edition
[INFO] [stdout]  --> examples/generic-trait.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use jsonrpc_core::{IoHandler, Error, Result};
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `crate`: `crate::jsonrpc_core::{IoHandler, Error, Result}`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/path-changes.html>
[INFO] [stdout]   = note: `--force-warn absolute-paths-not-starting-with-crate` implied by `--force-warn rust-2018-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: absolute paths must start with `self`, `super`, `crate`, or an external crate name in the 2018 edition
[INFO] [stdout]  --> examples/generic-trait.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use jsonrpc_core::futures::future::{self, FutureResult};
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `crate`: `crate::jsonrpc_core::futures::future::{self, FutureResult}`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/path-changes.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> examples/generic-trait.rs:16:21
[INFO] [stdout]    |
[INFO] [stdout] 16 |         fn set_two(&self, Two) -> Result<()>;
[INFO] [stdout]    |                           ^^^ help: try naming the parameter or explicitly ignoring it: `_: Two`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout]    = note: `--force-warn anonymous-parameters` implied by `--force-warn rust-2018-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> examples/generic-trait.rs:20:18
[INFO] [stdout]    |
[INFO] [stdout] 20 |         fn call(&self, One) -> FutureResult<(One, Two), Error>;
[INFO] [stdout]    |                        ^^^ help: try naming the parameter or explicitly ignoring it: `_: One`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: absolute paths must start with `self`, `super`, `crate`, or an external crate name in the 2018 edition
[INFO] [stdout]   --> examples/generic-trait.rs:37:3
[INFO] [stdout]    |
[INFO] [stdout] 37 |         ::future::finished((num + 999, "hello".into()))
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^ help: use `crate`: `crate::future::finished`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/path-changes.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: errors present after applying fixes to crate `meta_macros`
[INFO] [stderr]  --> examples/meta-macros.rs
[INFO] [stderr]   = cause: error: no rules expected `:`
[INFO] [stderr]               --> examples/meta-macros.rs:21:18
[INFO] [stderr]                |
[INFO] [stderr]             21 |         fn add(&self, _: u64, _: u64) -> Result<u64>;
[INFO] [stderr]                |                        ^ no rules expected this token in macro call
[INFO] [stderr]                |
[INFO] [stderr]            note: while trying to match `)`
[INFO] [stderr]               --> src/auto_args.rs:182:44
[INFO] [stderr]                |
[INFO] [stderr]            182 |         fn $method: ident (&self $(, $param: ty)*) -> $result: tt <$out: ty $(, $error: ty)* >
[INFO] [stderr]                |                                                  ^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: no rules expected `:`
[INFO] [stderr]               --> examples/meta-macros.rs:25:18
[INFO] [stderr]                |
[INFO] [stderr]             25 |         fn mul(&self, _: u64, _: jsonrpc_macros::Trailing<u64>) -> Result<u64>;
[INFO] [stderr]                |                        ^ no rules expected this token in macro call
[INFO] [stderr]                |
[INFO] [stderr]            note: while trying to match `)`
[INFO] [stderr]               --> src/auto_args.rs:182:44
[INFO] [stderr]                |
[INFO] [stderr]            182 |         fn $method: ident (&self $(, $param: ty)*) -> $result: tt <$out: ty $(, $error: ty)* >
[INFO] [stderr]                |                                                  ^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: no rules expected `:`
[INFO] [stderr]               --> examples/meta-macros.rs:29:19
[INFO] [stderr]                |
[INFO] [stderr]             29 |         fn call(&self, _: u64) -> FutureResult<String, Error>;
[INFO] [stderr]                |                         ^ no rules expected this token in macro call
[INFO] [stderr]                |
[INFO] [stderr]            note: while trying to match `)`
[INFO] [stderr]               --> src/auto_args.rs:182:44
[INFO] [stderr]                |
[INFO] [stderr]            182 |         fn $method: ident (&self $(, $param: ty)*) -> $result: tt <$out: ty $(, $error: ty)* >
[INFO] [stderr]                |                                                  ^
[INFO] [stderr]            
[INFO] [stderr]            
[INFO] [stderr]            error: no rules expected reserved identifier `_`
[INFO] [stderr]               --> examples/meta-macros.rs:33:23
[INFO] [stderr]                |
[INFO] [stderr]             33 |         fn call_meta(&self, _: Self::Metadata, _: BTreeMap<String, Value>) -> FutureResult<String, Error>;
[INFO] [stderr]                |                             ^ no rules expected this token in macro call
[INFO] [stderr]                |
[INFO] [stderr]            note: while trying to match keyword `Self`
[INFO] [stderr]               --> src/auto_args.rs:196:29
[INFO] [stderr]                |
[INFO] [stderr]            196 |         fn $method: ident (&self, Self::Metadata $(, $param: ty)*) -> $result: tt <$out: ty $(, $error: ty)* >
[INFO] [stderr]                |                                   ^^^^
[INFO] [stdout] warning: absolute paths must start with `self`, `super`, `crate`, or an external crate name in the 2018 edition
[INFO] [stdout]  --> examples/meta-macros.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use jsonrpc_core::{futures, MetaIoHandler, Metadata, Error, Value, Result};
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `crate`: `crate::jsonrpc_core::{futures, MetaIoHandler, Metadata, Error, Value, Result}`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/path-changes.html>
[INFO] [stdout]   = note: `--force-warn absolute-paths-not-starting-with-crate` implied by `--force-warn rust-2018-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            
[INFO] [stdout] warning: absolute paths must start with `self`, `super`, `crate`, or an external crate name in the 2018 edition
[INFO] [stdout]  --> examples/meta-macros.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use jsonrpc_core::futures::future::FutureResult;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `crate`: `crate::jsonrpc_core::futures::future::FutureResult`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/path-changes.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> examples/meta-macros.rs:21:17
[INFO] [stdout]    |
[INFO] [stdout] 21 |         fn add(&self, u64, u64) -> Result<u64>;
[INFO] [stdout]    |                       ^^^ help: try naming the parameter or explicitly ignoring it: `_: u64`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout]    = note: `--force-warn anonymous-parameters` implied by `--force-warn rust-2018-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]            error: aborting due to 4 previous errors
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> examples/meta-macros.rs:21:22
[INFO] [stdout]    |
[INFO] [stdout] 21 |         fn add(&self, u64, u64) -> Result<u64>;
[INFO] [stdout]    |                            ^^^ help: try naming the parameter or explicitly ignoring it: `_: u64`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] help: to report this as a bug, open an issue at https://github.com/rust-lang/rust/issues, quoting the full output of this command
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> examples/meta-macros.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 |         fn mul(&self, u64, jsonrpc_macros::Trailing<u64>) -> Result<u64>;
[INFO] [stdout]    |                       ^^^ help: try naming the parameter or explicitly ignoring it: `_: u64`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] help: to possibly apply more fixes, pass in the `--broken-code` flag
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> examples/meta-macros.rs:25:22
[INFO] [stdout]    |
[INFO] [stdout] 25 |         fn mul(&self, u64, jsonrpc_macros::Trailing<u64>) -> Result<u64>;
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: jsonrpc_macros::Trailing<u64>`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] note: original diagnostics will follow:
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> examples/meta-macros.rs:29:18
[INFO] [stdout]    |
[INFO] [stdout] 29 |         fn call(&self, u64) -> FutureResult<String, Error>;
[INFO] [stdout]    |                        ^^^ help: try naming the parameter or explicitly ignoring it: `_: u64`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 13.76s
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> examples/meta-macros.rs:33:23
[INFO] [stdout]    |
[INFO] [stdout] 33 |         fn call_meta(&self, Self::Metadata, BTreeMap<String, Value>) -> FutureResult<String, Error>;
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Metadata`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> examples/meta-macros.rs:33:39
[INFO] [stdout]    |
[INFO] [stdout] 33 |         fn call_meta(&self, Self::Metadata, BTreeMap<String, Value>) -> FutureResult<String, Error>;
[INFO] [stdout]    |                                             ^^^^^^^^^^^^^^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: BTreeMap<String, Value>`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2018/trait-fn-parameters.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] crater-edition-check: bitconch-jsonrpc-macros v0.1.0 (/opt/rustwide/workdir) updating edition from 2015 to 2018
[INFO] [stderr]     Checking bitconch-jsonrpc-macros v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/auto_args.rs:455:12
[INFO] [stdout]     |
[INFO] [stdout] 455 |     let len = r#try!(params_len(&params));
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `r#try`: use the `?` operator instead
[INFO] [stdout]    --> src/auto_args.rs:455:12
[INFO] [stdout]     |
[INFO] [stdout] 455 |     let len = r#try!(params_len(&params));
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a macro
[INFO] [stdout]   --> src/auto_args.rs:74:1
[INFO] [stdout]    |
[INFO] [stdout] 74 | macro_rules! build_rpc_trait {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a macro
[INFO] [stdout]   --> src/auto_args.rs:74:1
[INFO] [stdout]    |
[INFO] [stdout] 74 | macro_rules! build_rpc_trait {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `:`, `@`, or `|`, found `,`
[INFO] [stdout]   --> examples/pubsub-macros.rs:23:20
[INFO] [stdout]    |
[INFO] [stdout] 23 |         fn add(&self, u64, u64) -> Result<u64>;
[INFO] [stdout]    |                          ^ expected one of `:`, `@`, or `|`
[INFO] [stdout]    |
[INFO] [stdout]    = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
[INFO] [stdout] help: if this is a parameter name, give it a type
[INFO] [stdout]    |
[INFO] [stdout] 23 |         fn add(&self, u64: TypeName, u64) -> Result<u64>;
[INFO] [stdout]    |                          ++++++++++
[INFO] [stdout] help: if this is a type, explicitly ignore the parameter name
[INFO] [stdout]    |
[INFO] [stdout] 23 |         fn add(&self, _: u64, u64) -> Result<u64>;
[INFO] [stdout]    |                       ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `:`, `@`, or `|`, found `)`
[INFO] [stdout]   --> examples/pubsub-macros.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | / build_rpc_trait! {
[INFO] [stdout] 18 | |     pub trait Rpc {
[INFO] [stdout] 19 | |         type Metadata;
[INFO] [stdout] ...  |
[INFO] [stdout] 35 | | }
[INFO] [stdout]    | |_^ expected one of `:`, `@`, or `|`
[INFO] [stdout]    |
[INFO] [stdout]    = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
[INFO] [stdout]    = note: this error originates in the macro `build_rpc_trait` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: if this is a parameter name, give it a type
[INFO] [stdout]    |
[INFO] [stdout] 23 |         fn add(&self, u64, u64: TypeName) -> Result<u64>;
[INFO] [stdout]    |                               ++++++++++
[INFO] [stdout] help: if this is a type, explicitly ignore the parameter name
[INFO] [stdout]    |
[INFO] [stdout] 23 |         fn add(&self, u64, _: u64) -> Result<u64>;
[INFO] [stdout]    |                            ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `!`, `(`, `...`, `..=`, `..`, `::`, `:`, `{`, or `|`, found `,`
[INFO] [stdout]   --> examples/pubsub-macros.rs:28:38
[INFO] [stdout]    |
[INFO] [stdout] 28 |             fn subscribe(&self, Self::Metadata, pubsub::Subscriber<String>, u64);
[INFO] [stdout]    |                                               ^ expected one of 9 possible tokens
[INFO] [stdout]    |
[INFO] [stdout]    = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
[INFO] [stdout] help: explicitly ignore the parameter name
[INFO] [stdout]    |
[INFO] [stdout] 28 |             fn subscribe(&self, _: Self::Metadata, pubsub::Subscriber<String>, u64);
[INFO] [stdout]    |                                 ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `!`, `(`, `...`, `..=`, `..`, `::`, `:`, `{`, or `|`, found `<`
[INFO] [stdout]   --> examples/pubsub-macros.rs:28:58
[INFO] [stdout]    |
[INFO] [stdout] 28 |             fn subscribe(&self, Self::Metadata, pubsub::Subscriber<String>, u64);
[INFO] [stdout]    |                                                                   ^ expected one of 9 possible tokens
[INFO] [stdout]    |
[INFO] [stdout]    = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
[INFO] [stdout] help: explicitly ignore the parameter name
[INFO] [stdout]    |
[INFO] [stdout] 28 |             fn subscribe(&self, Self::Metadata, _: pubsub::Subscriber<String>, u64);
[INFO] [stdout]    |                                                 ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `:`, `@`, or `|`, found `)`
[INFO] [stdout]   --> examples/pubsub-macros.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | / build_rpc_trait! {
[INFO] [stdout] 18 | |     pub trait Rpc {
[INFO] [stdout] 19 | |         type Metadata;
[INFO] [stdout] ...  |
[INFO] [stdout] 35 | | }
[INFO] [stdout]    | |_^ expected one of `:`, `@`, or `|`
[INFO] [stdout]    |
[INFO] [stdout]    = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
[INFO] [stdout]    = note: this error originates in the macro `build_rpc_trait` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: if this is a parameter name, give it a type
[INFO] [stdout]    |
[INFO] [stdout] 28 |             fn subscribe(&self, Self::Metadata, pubsub::Subscriber<String>, u64: TypeName);
[INFO] [stdout]    |                                                                                ++++++++++
[INFO] [stdout] help: if this is a type, explicitly ignore the parameter name
[INFO] [stdout]    |
[INFO] [stdout] 28 |             fn subscribe(&self, Self::Metadata, pubsub::Subscriber<String>, _: u64);
[INFO] [stdout]    |                                                                             ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `!`, `(`, `...`, `..=`, `..`, `::`, `:`, `{`, or `|`, found `,`
[INFO] [stdout]   --> examples/pubsub-macros.rs:32:40
[INFO] [stdout]    |
[INFO] [stdout] 32 |             fn unsubscribe(&self, Self::Metadata, SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                 ^ expected one of 9 possible tokens
[INFO] [stdout]    |
[INFO] [stdout]    = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
[INFO] [stdout] help: explicitly ignore the parameter name
[INFO] [stdout]    |
[INFO] [stdout] 32 |             fn unsubscribe(&self, _: Self::Metadata, SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                   ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `:`, `@`, or `|`, found `)`
[INFO] [stdout]   --> examples/pubsub-macros.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | / build_rpc_trait! {
[INFO] [stdout] 18 | |     pub trait Rpc {
[INFO] [stdout] 19 | |         type Metadata;
[INFO] [stdout] ...  |
[INFO] [stdout] 35 | | }
[INFO] [stdout]    | |_^ expected one of `:`, `@`, or `|`
[INFO] [stdout]    |
[INFO] [stdout]    = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
[INFO] [stdout]    = note: this error originates in the macro `build_rpc_trait` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: if this is a parameter name, give it a type
[INFO] [stdout]    |
[INFO] [stdout] 32 |             fn unsubscribe(&self, Self::Metadata, SubscriptionId: TypeName) -> Result<bool>;
[INFO] [stdout]    |                                                                 ++++++++++
[INFO] [stdout] help: if this is a type, explicitly ignore the parameter name
[INFO] [stdout]    |
[INFO] [stdout] 32 |             fn unsubscribe(&self, Self::Metadata, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                   ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `:`, `@`, or `|`, found `,`
[INFO] [stdout]   --> examples/std.rs:16:20
[INFO] [stdout]    |
[INFO] [stdout] 16 |         fn add(&self, u64, u64) -> Result<u64>;
[INFO] [stdout]    |                          ^ expected one of `:`, `@`, or `|`
[INFO] [stdout]    |
[INFO] [stdout]    = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
[INFO] [stdout] help: if this is a parameter name, give it a type
[INFO] [stdout]    |
[INFO] [stdout] 16 |         fn add(&self, u64: TypeName, u64) -> Result<u64>;
[INFO] [stdout]    |                          ++++++++++
[INFO] [stdout] help: if this is a type, explicitly ignore the parameter name
[INFO] [stdout]    |
[INFO] [stdout] 16 |         fn add(&self, _: u64, u64) -> Result<u64>;
[INFO] [stdout]    |                       ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `:`, `@`, or `|`, found `)`
[INFO] [stdout]   --> examples/std.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / build_rpc_trait! {
[INFO] [stdout]  9 | |     pub trait Rpc {
[INFO] [stdout] 10 | |         /// Returns a protocol version
[INFO] [stdout] 11 | |         #[rpc(name = "protocolVersion")]
[INFO] [stdout] ...  |
[INFO] [stdout] 22 | | }
[INFO] [stdout]    | |_^ expected one of `:`, `@`, or `|`
[INFO] [stdout]    |
[INFO] [stdout]    = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
[INFO] [stdout]    = note: this error originates in the macro `build_rpc_trait` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: if this is a parameter name, give it a type
[INFO] [stdout]    |
[INFO] [stdout] 16 |         fn add(&self, u64, u64: TypeName) -> Result<u64>;
[INFO] [stdout]    |                               ++++++++++
[INFO] [stdout] help: if this is a type, explicitly ignore the parameter name
[INFO] [stdout]    |
[INFO] [stdout] 16 |         fn add(&self, u64, _: u64) -> Result<u64>;
[INFO] [stdout]    |                            ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `:`, `@`, or `|`, found `)`
[INFO] [stdout]   --> examples/generic-trait.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / build_rpc_trait! {
[INFO] [stdout]  9 | |     pub trait Rpc<One, Two> {
[INFO] [stdout] 10 | |         /// Get One type.
[INFO] [stdout] 11 | |         #[rpc(name = "getOne")]
[INFO] [stdout] ...  |
[INFO] [stdout] 22 | | }
[INFO] [stdout]    | |_^ expected one of `:`, `@`, or `|`
[INFO] [stdout]    |
[INFO] [stdout]    = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
[INFO] [stdout]    = note: this error originates in the macro `build_rpc_trait` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: if this is a parameter name, give it a type
[INFO] [stdout]    |
[INFO] [stdout] 16 |         fn set_two(&self, Two: TypeName) -> Result<()>;
[INFO] [stdout]    |                              ++++++++++
[INFO] [stdout] help: if this is a type, explicitly ignore the parameter name
[INFO] [stdout]    |
[INFO] [stdout] 16 |         fn set_two(&self, _: Two) -> Result<()>;
[INFO] [stdout]    |                           ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `bitconch-jsonrpc-macros` (example "std") due to 2 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: expected one of `!`, `(`, `...`, `..=`, `..`, `::`, `:`, `{`, or `|`, found `,`
[INFO] [stdout]   --> tests/pubsub-macros.rs:28:38
[INFO] [stdout]    |
[INFO] [stdout] 28 |             fn subscribe(&self, Self::Metadata, pubsub::Subscriber<String>, u32, Trailing<u64>);
[INFO] [stdout]    |                                               ^ expected one of 9 possible tokens
[INFO] [stdout]    |
[INFO] [stdout]    = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
[INFO] [stdout] help: explicitly ignore the parameter name
[INFO] [stdout]    |
[INFO] [stdout] 28 |             fn subscribe(&self, _: Self::Metadata, pubsub::Subscriber<String>, u32, Trailing<u64>);
[INFO] [stdout]    |                                 ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `bitconch-jsonrpc-macros` (example "pubsub-macros") due to 7 previous errors
[INFO] [stderr] error: could not compile `bitconch-jsonrpc-macros` (example "generic-trait") due to 1 previous error
[INFO] [stdout] error: expected one of `!`, `(`, `...`, `..=`, `..`, `::`, `:`, `{`, or `|`, found `<`
[INFO] [stdout]   --> tests/pubsub-macros.rs:28:58
[INFO] [stdout]    |
[INFO] [stdout] 28 |             fn subscribe(&self, Self::Metadata, pubsub::Subscriber<String>, u32, Trailing<u64>);
[INFO] [stdout]    |                                                                   ^ expected one of 9 possible tokens
[INFO] [stdout]    |
[INFO] [stdout]    = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
[INFO] [stdout] help: explicitly ignore the parameter name
[INFO] [stdout]    |
[INFO] [stdout] 28 |             fn subscribe(&self, Self::Metadata, _: pubsub::Subscriber<String>, u32, Trailing<u64>);
[INFO] [stdout]    |                                                 ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `:`, `@`, or `|`, found `,`
[INFO] [stdout]   --> tests/pubsub-macros.rs:28:71
[INFO] [stdout]    |
[INFO] [stdout] 28 |             fn subscribe(&self, Self::Metadata, pubsub::Subscriber<String>, u32, Trailing<u64>);
[INFO] [stdout]    |                                                                                ^ expected one of `:`, `@`, or `|`
[INFO] [stdout]    |
[INFO] [stdout]    = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
[INFO] [stdout] help: if this is a parameter name, give it a type
[INFO] [stdout]    |
[INFO] [stdout] 28 |             fn subscribe(&self, Self::Metadata, pubsub::Subscriber<String>, u32: TypeName, Trailing<u64>);
[INFO] [stdout]    |                                                                                ++++++++++
[INFO] [stdout] help: if this is a type, explicitly ignore the parameter name
[INFO] [stdout]    |
[INFO] [stdout] 28 |             fn subscribe(&self, Self::Metadata, pubsub::Subscriber<String>, _: u32, Trailing<u64>);
[INFO] [stdout]    |                                                                             ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `:`, `@`, or `|`, found `<`
[INFO] [stdout]   --> tests/pubsub-macros.rs:28:81
[INFO] [stdout]    |
[INFO] [stdout] 28 |             fn subscribe(&self, Self::Metadata, pubsub::Subscriber<String>, u32, Trailing<u64>);
[INFO] [stdout]    |                                                                                          ^ expected one of `:`, `@`, or `|`
[INFO] [stdout]    |
[INFO] [stdout]    = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
[INFO] [stdout] help: if this is a type, explicitly ignore the parameter name
[INFO] [stdout]    |
[INFO] [stdout] 28 |             fn subscribe(&self, Self::Metadata, pubsub::Subscriber<String>, u32, _: Trailing<u64>);
[INFO] [stdout]    |                                                                                  ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `!`, `(`, `...`, `..=`, `..`, `::`, `:`, `{`, or `|`, found `,`
[INFO] [stdout]   --> tests/pubsub-macros.rs:32:40
[INFO] [stdout]    |
[INFO] [stdout] 32 |             fn unsubscribe(&self, Self::Metadata, SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                 ^ expected one of 9 possible tokens
[INFO] [stdout]    |
[INFO] [stdout]    = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
[INFO] [stdout] help: explicitly ignore the parameter name
[INFO] [stdout]    |
[INFO] [stdout] 32 |             fn unsubscribe(&self, _: Self::Metadata, SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                   ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `:`, `@`, or `|`, found `)`
[INFO] [stdout]   --> tests/pubsub-macros.rs:21:1
[INFO] [stdout]    |
[INFO] [stdout] 21 | / build_rpc_trait! {
[INFO] [stdout] 22 | |     pub trait Rpc {
[INFO] [stdout] 23 | |         type Metadata;
[INFO] [stdout] ...  |
[INFO] [stdout] 35 | | }
[INFO] [stdout]    | |_^ expected one of `:`, `@`, or `|`
[INFO] [stdout]    |
[INFO] [stdout]    = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
[INFO] [stdout]    = note: this error originates in the macro `build_rpc_trait` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: if this is a parameter name, give it a type
[INFO] [stdout]    |
[INFO] [stdout] 32 |             fn unsubscribe(&self, Self::Metadata, SubscriptionId: TypeName) -> Result<bool>;
[INFO] [stdout]    |                                                                 ++++++++++
[INFO] [stdout] help: if this is a type, explicitly ignore the parameter name
[INFO] [stdout]    |
[INFO] [stdout] 32 |             fn unsubscribe(&self, Self::Metadata, _: SubscriptionId) -> Result<bool>;
[INFO] [stdout]    |                                                   ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `:`, `@`, or `|`, found `,`
[INFO] [stdout]   --> examples/meta-macros.rs:21:20
[INFO] [stdout]    |
[INFO] [stdout] 21 |         fn add(&self, u64, u64) -> Result<u64>;
[INFO] [stdout]    |                          ^ expected one of `:`, `@`, or `|`
[INFO] [stdout]    |
[INFO] [stdout]    = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
[INFO] [stdout] help: if this is a parameter name, give it a type
[INFO] [stdout]    |
[INFO] [stdout] 21 |         fn add(&self, u64: TypeName, u64) -> Result<u64>;
[INFO] [stdout]    |                          ++++++++++
[INFO] [stdout] help: if this is a type, explicitly ignore the parameter name
[INFO] [stdout]    |
[INFO] [stdout] 21 |         fn add(&self, _: u64, u64) -> Result<u64>;
[INFO] [stdout]    |                       ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `:`, `@`, or `|`, found `)`
[INFO] [stdout]   --> examples/meta-macros.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 | / build_rpc_trait! {
[INFO] [stdout] 16 | |     pub trait Rpc {
[INFO] [stdout] 17 | |         type Metadata;
[INFO] [stdout] ...  |
[INFO] [stdout] 35 | | }
[INFO] [stdout]    | |_^ expected one of `:`, `@`, or `|`
[INFO] [stdout]    |
[INFO] [stdout]    = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
[INFO] [stdout]    = note: this error originates in the macro `build_rpc_trait` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: if this is a parameter name, give it a type
[INFO] [stdout]    |
[INFO] [stdout] 21 |         fn add(&self, u64, u64: TypeName) -> Result<u64>;
[INFO] [stdout]    |                               ++++++++++
[INFO] [stdout] help: if this is a type, explicitly ignore the parameter name
[INFO] [stdout]    |
[INFO] [stdout] 21 |         fn add(&self, u64, _: u64) -> Result<u64>;
[INFO] [stdout]    |                            ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `:`, `@`, or `|`, found `,`
[INFO] [stdout]   --> examples/meta-macros.rs:25:20
[INFO] [stdout]    |
[INFO] [stdout] 25 |         fn mul(&self, u64, jsonrpc_macros::Trailing<u64>) -> Result<u64>;
[INFO] [stdout]    |                          ^ expected one of `:`, `@`, or `|`
[INFO] [stdout]    |
[INFO] [stdout]    = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
[INFO] [stdout] help: if this is a parameter name, give it a type
[INFO] [stdout]    |
[INFO] [stdout] 25 |         fn mul(&self, u64: TypeName, jsonrpc_macros::Trailing<u64>) -> Result<u64>;
[INFO] [stdout]    |                          ++++++++++
[INFO] [stdout] help: if this is a type, explicitly ignore the parameter name
[INFO] [stdout]    |
[INFO] [stdout] 25 |         fn mul(&self, _: u64, jsonrpc_macros::Trailing<u64>) -> Result<u64>;
[INFO] [stdout]    |                       ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `!`, `(`, `...`, `..=`, `..`, `::`, `:`, `{`, or `|`, found `<`
[INFO] [stdout]   --> examples/meta-macros.rs:25:46
[INFO] [stdout]    |
[INFO] [stdout] 25 |         fn mul(&self, u64, jsonrpc_macros::Trailing<u64>) -> Result<u64>;
[INFO] [stdout]    |                                                    ^ expected one of 9 possible tokens
[INFO] [stdout]    |
[INFO] [stdout]    = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
[INFO] [stdout] help: explicitly ignore the parameter name
[INFO] [stdout]    |
[INFO] [stdout] 25 |         fn mul(&self, u64, _: jsonrpc_macros::Trailing<u64>) -> Result<u64>;
[INFO] [stdout]    |                            ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `:`, `@`, or `|`, found `)`
[INFO] [stdout]   --> examples/meta-macros.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 | / build_rpc_trait! {
[INFO] [stdout] 16 | |     pub trait Rpc {
[INFO] [stdout] 17 | |         type Metadata;
[INFO] [stdout] ...  |
[INFO] [stdout] 35 | | }
[INFO] [stdout]    | |_^ expected one of `:`, `@`, or `|`
[INFO] [stdout]    |
[INFO] [stdout]    = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
[INFO] [stdout]    = note: this error originates in the macro `build_rpc_trait` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: if this is a parameter name, give it a type
[INFO] [stdout]    |
[INFO] [stdout] 29 |         fn call(&self, u64: TypeName) -> FutureResult<String, Error>;
[INFO] [stdout]    |                           ++++++++++
[INFO] [stdout] help: if this is a type, explicitly ignore the parameter name
[INFO] [stdout]    |
[INFO] [stdout] 29 |         fn call(&self, _: u64) -> FutureResult<String, Error>;
[INFO] [stdout]    |                        ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `!`, `(`, `...`, `..=`, `..`, `::`, `:`, `{`, or `|`, found `,`
[INFO] [stdout]   --> examples/meta-macros.rs:33:37
[INFO] [stdout]    |
[INFO] [stdout] 33 |         fn call_meta(&self, Self::Metadata, BTreeMap<String, Value>) -> FutureResult<String, Error>;
[INFO] [stdout]    |                                           ^ expected one of 9 possible tokens
[INFO] [stdout]    |
[INFO] [stdout]    = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
[INFO] [stdout] help: explicitly ignore the parameter name
[INFO] [stdout]    |
[INFO] [stdout] 33 |         fn call_meta(&self, _: Self::Metadata, BTreeMap<String, Value>) -> FutureResult<String, Error>;
[INFO] [stdout]    |                             ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `:`, `@`, or `|`, found `<`
[INFO] [stdout]   --> examples/meta-macros.rs:33:47
[INFO] [stdout]    |
[INFO] [stdout] 33 |         fn call_meta(&self, Self::Metadata, BTreeMap<String, Value>) -> FutureResult<String, Error>;
[INFO] [stdout]    |                                                     ^ expected one of `:`, `@`, or `|`
[INFO] [stdout]    |
[INFO] [stdout]    = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
[INFO] [stdout] help: if this is a type, explicitly ignore the parameter name
[INFO] [stdout]    |
[INFO] [stdout] 33 |         fn call_meta(&self, Self::Metadata, _: BTreeMap<String, Value>) -> FutureResult<String, Error>;
[INFO] [stdout]    |                                             ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `:`, `@`, or `|`, found `>`
[INFO] [stdout]   --> examples/meta-macros.rs:33:61
[INFO] [stdout]    |
[INFO] [stdout] 33 |         fn call_meta(&self, Self::Metadata, BTreeMap<String, Value>) -> FutureResult<String, Error>;
[INFO] [stdout]    |                                                                   ^ expected one of `:`, `@`, or `|`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `bitconch-jsonrpc-macros` (test "pubsub-macros") due to 6 previous errors
[INFO] [stdout] error: expected one of `:`, `@`, or `|`, found `,`
[INFO] [stdout]   --> tests/macros.rs:26:20
[INFO] [stdout]    |
[INFO] [stdout] 26 |         fn add(&self, u64, u64) -> Result<u64>;
[INFO] [stdout]    |                          ^ expected one of `:`, `@`, or `|`
[INFO] [stdout]    |
[INFO] [stdout]    = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
[INFO] [stdout] help: if this is a parameter name, give it a type
[INFO] [stdout]    |
[INFO] [stdout] 26 |         fn add(&self, u64: TypeName, u64) -> Result<u64>;
[INFO] [stdout]    |                          ++++++++++
[INFO] [stdout] help: if this is a type, explicitly ignore the parameter name
[INFO] [stdout]    |
[INFO] [stdout] 26 |         fn add(&self, _: u64, u64) -> Result<u64>;
[INFO] [stdout]    |                       ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: expected one of `:`, `@`, or `|`, found `)`
[INFO] [stdout]   --> tests/macros.rs:18:1
[INFO] [stdout]    |
[INFO] [stdout] 18 | / build_rpc_trait! {
[INFO] [stdout] 19 | |     pub trait Rpc {
[INFO] [stdout] 20 | |         /// Returns a protocol version
[INFO] [stdout] 21 | |         #[rpc(name = "protocolVersion")]
[INFO] [stdout] ...  |
[INFO] [stdout] 28 | | }
[INFO] [stdout]    | |_^ expected one of `:`, `@`, or `|`
[INFO] [stdout]    |
[INFO] [stdout]    = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
[INFO] [stdout]    = note: this error originates in the macro `build_rpc_trait` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: if this is a parameter name, give it a type
[INFO] [stdout]    |
[INFO] [stdout] 26 |         fn add(&self, u64, u64: TypeName) -> Result<u64>;
[INFO] [stdout]    |                               ++++++++++
[INFO] [stdout] help: if this is a type, explicitly ignore the parameter name
[INFO] [stdout]    |
[INFO] [stdout] 26 |         fn add(&self, u64, _: u64) -> Result<u64>;
[INFO] [stdout]    |                            ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `bitconch-jsonrpc-macros` (test "macros") due to 2 previous errors
[INFO] [stdout] error[E0050]: method `call_meta` has 3 parameters but the declaration in trait `Rpc::call_meta` has 4
[INFO] [stdout]   --> examples/meta-macros.rs:53:15
[INFO] [stdout]    |
[INFO] [stdout] 33 |         fn call_meta(&self, Self::Metadata, BTreeMap<String, Value>) -> FutureResult<String, Error>;
[INFO] [stdout]    |                      ---------------------------------------------- trait requires 4 parameters
[INFO] [stdout] ...
[INFO] [stdout] 53 |     fn call_meta(&self, meta: Self::Metadata, map: BTreeMap<String, Value>) -> FutureResult<String, Error> {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected 4 parameters, found 3
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0605]: non-primitive cast: `for<'a> fn(&'a Self, {type error}, {type error}, {type error}) -> Failed<std::string::String, jsonrpc_core::Error> {<Self as Rpc>::call_meta}` as `for<'a> fn(&'a Self, <Self as Rpc>::Metadata, BTreeMap<std::string::String, Value>) -> Failed<std::string::String, jsonrpc_core::Error>`
[INFO] [stdout]   --> examples/meta-macros.rs:15:1
[INFO] [stdout]    |
[INFO] [stdout] 15 | / build_rpc_trait! {
[INFO] [stdout] 16 | |     pub trait Rpc {
[INFO] [stdout] 17 | |         type Metadata;
[INFO] [stdout] ...  |
[INFO] [stdout] 35 | | }
[INFO] [stdout]    | |_^ invalid cast
[INFO] [stdout]    |
[INFO] [stdout]    = note: this error originates in the macro `build_rpc_trait` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0050, E0605.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0050`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `bitconch-jsonrpc-macros` (example "meta-macros") due to 10 previous errors
[INFO] running `Command { std: "docker" "inspect" "d06ca34a1867edcbaa587ad89646f5a799961ec26e6c7d7115b039db8bddc5a8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d06ca34a1867edcbaa587ad89646f5a799961ec26e6c7d7115b039db8bddc5a8", kill_on_drop: false }`
[INFO] [stdout] d06ca34a1867edcbaa587ad89646f5a799961ec26e6c7d7115b039db8bddc5a8
